package com.gitee.qdbp.general.marketing.api.activity.model;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import com.gitee.qdbp.general.marketing.enums.AwardDeliveryState;

/**
 * 活动结果查询类
 *
 * @author zhh
 * @version 181114
 */
public class ActivityResultWhere extends ActivityResultBean {

    /** 版本序列号 **/
    private static final long serialVersionUID = 1L;

    /** 主键列表 **/
    private List<String> ids;

    /** 主键前模匹配条件 **/
    private String idStarts;

    /** 主键后模匹配条件 **/
    private String idEnds;

    /** 主键模糊查询条件 **/
    private String idLike;

    /** 活动编号空值/非空值查询 **/
    private Boolean activityIdIsNull;

    /** 活动编号前模匹配条件 **/
    private String activityIdStarts;

    /** 活动编号后模匹配条件 **/
    private String activityIdEnds;

    /** 活动编号模糊查询条件 **/
    private String activityIdLike;

    /** 奖项编号空值/非空值查询 **/
    private Boolean prizeIdIsNull;

    /** 奖项编号前模匹配条件 **/
    private String prizeIdStarts;

    /** 奖项编号后模匹配条件 **/
    private String prizeIdEnds;

    /** 奖项编号模糊查询条件 **/
    private String prizeIdLike;

    /** 奖项等级空值/非空值查询 **/
    private Boolean prizeLevelIsNull;

    /** 最小奖项等级 **/
    private Integer prizeLevelMin;

    /** 最大奖项等级 **/
    private Integer prizeLevelMax;

    /** 奖品编号空值/非空值查询 **/
    private Boolean awardIdIsNull;

    /** 奖品编号前模匹配条件 **/
    private String awardIdStarts;

    /** 奖品编号后模匹配条件 **/
    private String awardIdEnds;

    /** 奖品编号模糊查询条件 **/
    private String awardIdLike;

    /** 用户编号空值/非空值查询 **/
    private Boolean userIdIsNull;

    /** 用户编号前模匹配条件 **/
    private String userIdStarts;

    /** 用户编号后模匹配条件 **/
    private String userIdEnds;

    /** 用户编号模糊查询条件 **/
    private String userIdLike;

    /** 奖品发放状态(1.未发放|2.发放中|3.已发放)空值/非空值查询 **/
    private Boolean deliveryStateIsNull;

    /** 奖品发放状态(1.未发放|2.发放中|3.已发放)列表 **/
    private List<AwardDeliveryState> deliveryStates;

    /** 最小创建时间 **/
    private Date createTimeMin;

    /** 最大创建时间 **/
    private Date createTimeMax;

    /** 最小创建时间 **/
    private Date createTimeMinWithDay;

    /** 最大创建时间 **/
    private Date createTimeMaxWithDay;

    /** 获取主键列表 **/
    public List<String> getIds() {
        return ids;
    }

    /** 设置主键列表 **/
    public void setIds(List<String> ids) {
        this.ids = ids;
    }

    /** 增加主键 **/
    public void addId(String... ids) {
        if (this.ids == null) {
            this.ids = new ArrayList<>();
        }
        this.ids.addAll(Arrays.asList(ids));
    }

    /** 获取主键前模匹配条件 **/
    public String getIdStarts() {
        return idStarts;
    }

    /** 设置主键前模匹配条件 **/
    public void setIdStarts(String idStarts) {
        this.idStarts = idStarts;
    }

    /** 获取主键后模匹配条件 **/
    public String getIdEnds() {
        return idEnds;
    }

    /** 设置主键后模匹配条件 **/
    public void setIdEnds(String idEnds) {
        this.idEnds = idEnds;
    }

    /** 获取主键模糊查询条件 **/
    public String getIdLike() {
        return idLike;
    }

    /** 设置主键模糊查询条件 **/
    public void setIdLike(String idLike) {
        this.idLike = idLike;
    }

    /** 判断活动编号是否为空值查询(true:空值查询|false:非空值查询) **/
    public Boolean getActivityIdIsNull() {
        return activityIdIsNull;
    }

    /**
     * 设置活动编号空值查询(true:空值查询|false:非空值查询)
     *
     * @param activityIdIsNull 活动编号空值查询
     * @deprecated 该字段为非空字段
     */
    @Deprecated
    public void setActivityIdIsNull(Boolean activityIdIsNull) {
        this.activityIdIsNull = activityIdIsNull;
    }

    /** 获取活动编号前模匹配条件 **/
    public String getActivityIdStarts() {
        return activityIdStarts;
    }

    /** 设置活动编号前模匹配条件 **/
    public void setActivityIdStarts(String activityIdStarts) {
        this.activityIdStarts = activityIdStarts;
    }

    /** 获取活动编号后模匹配条件 **/
    public String getActivityIdEnds() {
        return activityIdEnds;
    }

    /** 设置活动编号后模匹配条件 **/
    public void setActivityIdEnds(String activityIdEnds) {
        this.activityIdEnds = activityIdEnds;
    }

    /** 获取活动编号模糊查询条件 **/
    public String getActivityIdLike() {
        return activityIdLike;
    }

    /** 设置活动编号模糊查询条件 **/
    public void setActivityIdLike(String activityIdLike) {
        this.activityIdLike = activityIdLike;
    }

    /** 判断奖项编号是否为空值查询(true:空值查询|false:非空值查询) **/
    public Boolean getPrizeIdIsNull() {
        return prizeIdIsNull;
    }

    /**
     * 设置奖项编号空值查询(true:空值查询|false:非空值查询)
     *
     * @param prizeIdIsNull 奖项编号空值查询
     * @deprecated 该字段为非空字段
     */
    @Deprecated
    public void setPrizeIdIsNull(Boolean prizeIdIsNull) {
        this.prizeIdIsNull = prizeIdIsNull;
    }

    /** 获取奖项编号前模匹配条件 **/
    public String getPrizeIdStarts() {
        return prizeIdStarts;
    }

    /** 设置奖项编号前模匹配条件 **/
    public void setPrizeIdStarts(String prizeIdStarts) {
        this.prizeIdStarts = prizeIdStarts;
    }

    /** 获取奖项编号后模匹配条件 **/
    public String getPrizeIdEnds() {
        return prizeIdEnds;
    }

    /** 设置奖项编号后模匹配条件 **/
    public void setPrizeIdEnds(String prizeIdEnds) {
        this.prizeIdEnds = prizeIdEnds;
    }

    /** 获取奖项编号模糊查询条件 **/
    public String getPrizeIdLike() {
        return prizeIdLike;
    }

    /** 设置奖项编号模糊查询条件 **/
    public void setPrizeIdLike(String prizeIdLike) {
        this.prizeIdLike = prizeIdLike;
    }

    /** 判断奖项等级是否为空值查询(true:空值查询|false:非空值查询) **/
    public Boolean getPrizeLevelIsNull() {
        return prizeLevelIsNull;
    }

    /**
     * 设置奖项等级空值查询(true:空值查询|false:非空值查询)
     *
     * @param prizeLevelIsNull 奖项等级空值查询
     * @deprecated 该字段为非空字段
     */
    @Deprecated
    public void setPrizeLevelIsNull(Boolean prizeLevelIsNull) {
        this.prizeLevelIsNull = prizeLevelIsNull;
    }

    /** 获取最小奖项等级 **/
    public Integer getPrizeLevelMin() {
        return prizeLevelMin;
    }

    /** 设置最小奖项等级 **/
    public void setPrizeLevelMin(Integer prizeLevelMin) {
        this.prizeLevelMin = prizeLevelMin;
    }

    /** 获取最大奖项等级 **/
    public Integer getPrizeLevelMax() {
        return prizeLevelMax;
    }

    /** 设置最大奖项等级 **/
    public void setPrizeLevelMax(Integer prizeLevelMax) {
        this.prizeLevelMax = prizeLevelMax;
    }

    /** 判断奖品编号是否为空值查询(true:空值查询|false:非空值查询) **/
    public Boolean getAwardIdIsNull() {
        return awardIdIsNull;
    }

    /** 设置奖品编号空值查询(true:空值查询|false:非空值查询) **/
    public void setAwardIdIsNull(Boolean awardIdIsNull) {
        this.awardIdIsNull = awardIdIsNull;
    }

    /** 获取奖品编号前模匹配条件 **/
    public String getAwardIdStarts() {
        return awardIdStarts;
    }

    /** 设置奖品编号前模匹配条件 **/
    public void setAwardIdStarts(String awardIdStarts) {
        this.awardIdStarts = awardIdStarts;
    }

    /** 获取奖品编号后模匹配条件 **/
    public String getAwardIdEnds() {
        return awardIdEnds;
    }

    /** 设置奖品编号后模匹配条件 **/
    public void setAwardIdEnds(String awardIdEnds) {
        this.awardIdEnds = awardIdEnds;
    }

    /** 获取奖品编号模糊查询条件 **/
    public String getAwardIdLike() {
        return awardIdLike;
    }

    /** 设置奖品编号模糊查询条件 **/
    public void setAwardIdLike(String awardIdLike) {
        this.awardIdLike = awardIdLike;
    }

    /** 判断用户编号是否为空值查询(true:空值查询|false:非空值查询) **/
    public Boolean getUserIdIsNull() {
        return userIdIsNull;
    }

    /**
     * 设置用户编号空值查询(true:空值查询|false:非空值查询)
     *
     * @param userIdIsNull 用户编号空值查询
     * @deprecated 该字段为非空字段
     */
    @Deprecated
    public void setUserIdIsNull(Boolean userIdIsNull) {
        this.userIdIsNull = userIdIsNull;
    }

    /** 获取用户编号前模匹配条件 **/
    public String getUserIdStarts() {
        return userIdStarts;
    }

    /** 设置用户编号前模匹配条件 **/
    public void setUserIdStarts(String userIdStarts) {
        this.userIdStarts = userIdStarts;
    }

    /** 获取用户编号后模匹配条件 **/
    public String getUserIdEnds() {
        return userIdEnds;
    }

    /** 设置用户编号后模匹配条件 **/
    public void setUserIdEnds(String userIdEnds) {
        this.userIdEnds = userIdEnds;
    }

    /** 获取用户编号模糊查询条件 **/
    public String getUserIdLike() {
        return userIdLike;
    }

    /** 设置用户编号模糊查询条件 **/
    public void setUserIdLike(String userIdLike) {
        this.userIdLike = userIdLike;
    }

    /** 判断奖品发放状态(1.未发放|2.发放中|3.已发放)是否为空值查询(true:空值查询|false:非空值查询) **/
    public Boolean getDeliveryStateIsNull() {
        return deliveryStateIsNull;
    }

    /** 设置奖品发放状态(1.未发放|2.发放中|3.已发放)空值查询(true:空值查询|false:非空值查询) **/
    public void setDeliveryStateIsNull(Boolean deliveryStateIsNull) {
        this.deliveryStateIsNull = deliveryStateIsNull;
    }

    /** 获取奖品发放状态(1.未发放|2.发放中|3.已发放)列表 **/
    public List<AwardDeliveryState> getDeliveryStates() {
        return deliveryStates;
    }

    /** 设置奖品发放状态(1.未发放|2.发放中|3.已发放)列表 **/
    public void setDeliveryStates(List<AwardDeliveryState> deliveryStates) {
        this.deliveryStates = deliveryStates;
    }

    /** 增加奖品发放状态(1.未发放|2.发放中|3.已发放) **/
    public void addDeliveryState(AwardDeliveryState... deliveryStates) {
        if (this.deliveryStates == null) {
            this.deliveryStates = new ArrayList<>();
        }
        this.deliveryStates.addAll(Arrays.asList(deliveryStates));
    }

    /** 获取最小创建时间 **/
    public Date getCreateTimeMin() {
        return createTimeMin;
    }

    /** 设置最小创建时间 **/
    public void setCreateTimeMin(Date createTimeMin) {
        this.createTimeMin = createTimeMin;
    }

    /** 获取最大创建时间 **/
    public Date getCreateTimeMax() {
        return createTimeMax;
    }

    /** 设置最大创建时间 **/
    public void setCreateTimeMax(Date createTimeMax) {
        this.createTimeMax = createTimeMax;
    }

    /** 获取最小创建时间 **/
    public Date getCreateTimeMinWithDay() {
        return createTimeMinWithDay;
    }

    /** 设置最小创建时间 **/
    public void setCreateTimeMinWithDay(Date createTimeMinWithDay) {
        this.createTimeMinWithDay = createTimeMinWithDay;
    }

    /** 获取最大创建时间 **/
    public Date getCreateTimeMaxWithDay() {
        return createTimeMaxWithDay;
    }

    /** 设置最大创建时间 **/
    public void setCreateTimeMaxWithDay(Date createTimeMaxWithDay) {
        this.createTimeMaxWithDay = createTimeMaxWithDay;
    }

}